package com.zros.modules.business.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zros.modules.business.dto.QueryStatisticDto;
import com.zros.modules.business.vo.StatisticVo;

/**
 * <p>
 * 统计查询 服务类
 * </p>
 *
 * @author shimiao
 * @since 2019-04-22
 */
public interface IStatisticService extends IService<StatisticVo> {

	/**
     * -->业绩排行
     * ---->具有公司权限
     * ------>查询公司数据
     * @param
     * @return
     */
	public Page<StatisticVo> queryCompanyRankList( Page<StatisticVo> page, QueryStatisticDto queryStatisticDto);
	
	/**
     * -->业绩排行
     * ---->具有公司权限
     * ------>查询各个校区数据
     * @param
     * @return
     */
	Page<StatisticVo> queryAllCampusRankList( Page<StatisticVo> page, QueryStatisticDto queryStatisticDto);
	
	/**
     * -->业绩排行
     * ---->具有公司权限
     * ------>查询各个员工数据
     * @param
     * @return
     */
	Page<StatisticVo> queryAllPersonRankList( Page<StatisticVo> page, QueryStatisticDto queryStatisticDto);
	
	/**
     * -->业绩排行
     * ---->具有校区权限
     * ------>查询自己所属校区数据
     * @param
     * @return
     */
	Page<StatisticVo> querySelfCampusRankList( Page<StatisticVo> page, QueryStatisticDto queryStatisticDto);
	
	/**
     * -->业绩排行
     * ---->具有校区权限
     * ------>查询自己所属校区底下的用户
     * @param
     * @return
     */
	Page<StatisticVo> querySelfCampusPersonRankList( Page<StatisticVo> page, QueryStatisticDto queryStatisticDto);
	
	/**
     * -->业绩排行
     * ---->具有自身权限
     * ------>查询与自身相关的数据 （统计流水只统计拥有者为我的线索）
     * @param
     * @return
     */
	Page<StatisticVo> querySelfPersonRankList( Page<StatisticVo> page, QueryStatisticDto queryStatisticDto);
	
	/**
     * -->咨询分析
     * ---->校区到访率
     * ------>具有公司权限，查询所有校区数据；具有校区权限，查询自己所属校区数据
     * @param
     * @return
     */
	Page<StatisticVo> queryCampusVisitConList( Page<StatisticVo> page, QueryStatisticDto queryStatisticDto);
	
	/**
     * -->咨询分析
     * ---->校区到访转成交率
     * ------>具有公司权限，查询所有校区数据；具有校区权限，查询自己所属校区数据
     * @param
     * @return
     */
	Page<StatisticVo> queryCampusVisitRateConList( Page<StatisticVo> page, QueryStatisticDto queryStatisticDto);
	
	/**
     * -->咨询分析
     * ---->老师试听报名率
     * ------>公司权限，查询所有老师；校区权限，查询自己所属校区老师
     * @param
     * @return
     */
	Page<StatisticVo> queryTeacherEnrollRateConList( Page<StatisticVo> page, QueryStatisticDto queryStatisticDto);
	
	/**
     * -->咨询分析
     * ---->用户到访率
     * ------>具有公司权限，查询所有咨询师数据；具有校区权限，查询自己所属校区下边的用户数据；自具有自身权限，查询自身数据
     * @param
     * @return
     */
	Page<StatisticVo> queryUserVisitConList( Page<StatisticVo> page, QueryStatisticDto queryStatisticDto);
	
	/**
     * -->咨询分析
     * ---->用户到访转成交率
     * ------>具有公司权限，查询所有咨询师数据；具有校区权限，查询自己所属校区下边的用户数据；自具有自身权限，查询自身数据
     * @param
     * @return
     */
	Page<StatisticVo> queryUserVisitRateConList( Page<StatisticVo> page, QueryStatisticDto queryStatisticDto);
	
}
